package com.cn.laoluobase.jo;

import lombok.Getter;

@Getter
public enum MyHttpEnum {

    // 枚举列表：
    SUCCESS(1000,"成功"),
    FAIL(999,"失败"),
    NOTFOUND(404,"未找资资源"),

    NOTZERO(2001,"不能输入0");

    // 枚举内部变量，msg\code.
    private Integer code;
    private String msg;


    // 枚举类构造函数
    MyHttpEnum(Integer code, String msg){
        this.code = code;
        this.msg = msg;
    }

    // 根据code返回枚举类
    public static MyHttpEnum byCode(Integer code){
        for (MyHttpEnum statusEnum : MyHttpEnum.values()) {
            if (statusEnum.getCode().equals(code)) {
                //如果需要直接返回name则更改返回类型为String,return statusEnum.name;
                return statusEnum;
            }
        }
        throw new IllegalArgumentException("code is invalid");
    }

    // 根据name返回枚举类
    public static MyHttpEnum byName(String name){
        for (MyHttpEnum statusEnum : MyHttpEnum.values()) {
            if (statusEnum.name().equals(name)) {
                //如果需要直接返回name则更改返回类型为String,return statusEnum.name;
                return statusEnum;
            }
        }
        throw new IllegalArgumentException("name is invalid");

    }


}
